#ifndef POISSON_H
#define POISSON_H

typedef struct Poisson_t
{
  double mean;
  int fixed_mean;
} Poisson_t;

/* the parameter must be a single double precision number */
void Poisson_Init_Params(Poisson_t * dist, int nparams, ...);

#define Poisson_Init_Args while(0)

int Poisson_Sample(const Poisson_t * dist, int nargs, ...);

double Poisson_LogProb(const Poisson_t * dist, int val, int nargs, ...);
double Poisson_Prob(const Poisson_t * dist, int val, int nargs, ...);

#endif


